package leetcode_700;

/**
 *@author 周杨
 *BaseballGame_682 棒球游戏 用字符串表示规则
 *describe:用栈即可 AC 100%
 *2018年10月7日 下午12:32:32
 */
public class BaseballGame_682 {
	public int calPoints(String[] ops) {
        int []stack=new int[ops.length];
        int index=-1;
        for(String str:ops) {
        	if(str.length()==1) {
        		if("+".equals(str)) {
        			int now=stack[index]+stack[index-1];
        			stack[++index]=now;
        		}
        		else if("D".equals(str)) {
        			int now=2*stack[index];
        			stack[++index]=now;
        		}
        		else if("C".equals(str)) {
        			--index;
        		}
        		else {//是一位的数字
        			int now=Integer.parseInt(str);
        			stack[++index]=now;
        		}
        	}
        	else {
        		int now=Integer.parseInt(str);
    			stack[++index]=now;
        	}
        }
        int res=0;
        if(index==-1)
        	return 0;
        for(int i=0;i<=index;++i) {
        	res+=stack[i];
        }
        return res;
    }
}
